package com.alatus.springAI.Bean;

import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
import java.util.List;

@Data
public class WalmartProduct {
    @ExcelProperty("SKU")
    private String sku;

    @ExcelProperty("Product Name")
    private String productName;

    @ExcelProperty("Product ID Type")
    private String productIDType;

    @ExcelProperty("Product ID")
    private String productID;

    @ExcelProperty("Selling Price")
    private Double sellingPrice;

    @ExcelProperty("Brand")
    private String brand;

    @ExcelProperty("Shipping Weight (lbs)")
    private Double shippingWeight;

    @ExcelProperty("Main Image URL")
    private String mainImageURL;

    @ExcelProperty("Site Description")
    private String siteDescription;

    @ExcelProperty("Jean Style")
    private String jeanStyle;

    @ExcelProperty("Sock Size")
    private String sockSize;

    @ExcelProperty("Character")
    private String character;

    @ExcelProperty("Clothing Weight")
    private String clothingWeight;

    @ExcelProperty("Brand License")
    private String brandLicense;

    @ExcelProperty("Weather")
    private String weather;

    @ExcelProperty("Season (+)")
    private String season;

    @ExcelProperty("Season 1 (+)")
    private String season1;

    @ExcelProperty("Season 2 (+)")
    private String season2;

    @ExcelProperty("Season 3 (+)")
    private String season3;

    @ExcelProperty("Waist Rise")
    private String waistRise;

    @ExcelProperty("Sweater Style")
    private String sweaterStyle;

    @ExcelProperty("Warranty Text")
    private String warrantyText;

    @ExcelProperty("Season Code")
    private String seasonCode;

    @ExcelProperty("Is Set")
    private String setIs;

    @ExcelProperty("Skirt Length Style")
    private String skirtLengthStyle;

    @ExcelProperty("Bra Style")
    private String braStyle;

    @ExcelProperty("Jacket Style")
    private String jacketStyle;

    @ExcelProperty("Bra Cup Size")
    private String braCupSize;

    @ExcelProperty("Suit Breasting Style")
    private String suitBreastingStyle;

    @ExcelProperty("Outerwear Coat Jacket and Vest Type")
    private String outerwearCoatJacketAndVestType;

    @ExcelProperty("Measure")
    private String measure;

    @ExcelProperty("Unit")
    private String unit;

    @ExcelProperty("Clothing Top Style")
    private String clothingTopStyle;

    @ExcelProperty("Closure Type")
    private String closureType;

    @ExcelProperty("Pant Leg Cut")
    private String pantLegCut;

    @ExcelProperty("Clothing Length Style")
    private String clothingLengthStyle;

    @ExcelProperty("Hosiery Style")
    private String hosieryStyle;

    @ExcelProperty("Shoe Size")
    private String shoeSize;

    @ExcelProperty("Gender")
    private String gender;

    @ExcelProperty("Activity")
    private String activity;

    @ExcelProperty("Pattern")
    private String pattern;

    @ExcelProperty("GOTS Certification")
    private String gotsCertification;

    @ExcelProperty("Jean Finish")
    private String jeanFinish;

    @ExcelProperty("T-Shirt Type")
    private String tShirtType;

    @ExcelProperty("Swimsuit Style")
    private String swimsuitStyle;

    @ExcelProperty("Manufacturer Name")
    private String manufacturerName;

    @ExcelProperty("Count Per Pack")
    private Integer countPerPack;

    @ExcelProperty("Leg Opening Cut")
    private String legOpeningCut;

    @ExcelProperty("Additional Product Attribute Name")
    private String additionalProductAttributeName;

    @ExcelProperty("Additional Product Attribute Value")
    private String additionalProductAttributeValue;

    @ExcelProperty("Fabric Care Instructions")
    private String fabricCareInstructions;

    @ExcelProperty("Dress Shirt Size")
    private String dressShirtSize;

    @ExcelProperty("MSRP")
    private Double msrp;

    @ExcelProperty("Sock Rise")
    private String sockRise;

    @ExcelProperty("Theme")
    private String theme;

    @ExcelProperty("Additional Image URL")
    private String additionalImageURL;

    @ExcelProperty("Additional Image URL 1")
    private String additionalImageURL1;

    @ExcelProperty("Additional Image URL 2")
    private String additionalImageURL2;

    @ExcelProperty("Additional Image URL 3")
    private String additionalImageURL3;

    @ExcelProperty("Additional Image URL 4")
    private String additionalImageURL4;

    @ExcelProperty("Additional Image URL 5")
    private String additionalImageURL5;

    @ExcelProperty("Additional Image URL 6")
    private String additionalImageURL6;

    @ExcelProperty("Additional Image URL 7")
    private String additionalImageURL7;

    @ExcelProperty("Academic Institution")
    private String academicInstitution;

    @ExcelProperty("Model Number")
    private String modelNumber;

    @ExcelProperty("Small Parts Warning Code")
    private String smallPartsWarningCode;

    @ExcelProperty("Clothing Fit")
    private String clothingFit;

    @ExcelProperty("Upper Body Strap Configuration")
    private String upperBodyStrapConfiguration;

    @ExcelProperty("Sports League")
    private String sportsLeague;

    @ExcelProperty("Belt Style")
    private String beltStyle;

    @ExcelProperty("Waist Style")
    private String waistStyle;

    @ExcelProperty("Underpant/Swim Bottom Style")
    private String underpantSwimBottomStyle;

    @ExcelProperty("Sock Style")
    private String sockStyle;

    @ExcelProperty("Clothing Cut")
    private String clothingCut;

    @ExcelProperty("Scarf Style")
    private String scarfStyle;

    @ExcelProperty("Pant Style")
    private String pantStyle;

    @ExcelProperty("Number of Pieces")
    private Integer numberOfPieces;

    @ExcelProperty("Additional Features")
    private String additionalFeatures;

    @ExcelProperty("Pant Fit")
    private String pantFit;

    @ExcelProperty("Bra Size")
    private String braSize;

    @ExcelProperty("Season Year")
    private String seasonYear;

    @ExcelProperty("Hat Size Measurement")
    private String hatSizeMeasurement;

    @ExcelProperty("Athlete")
    private String athlete;

    @ExcelProperty("Clothing Style")
    private String clothingStyle;

    @ExcelProperty("Sleeve Style")
    private String sleeveStyle;

    @ExcelProperty("Shorts Style")
    private String shortsStyle;

    @ExcelProperty("Accent Color")
    private String accentColor;

    @ExcelProperty("Hat Style")
    private String hatStyle;

    @ExcelProperty("Sheerness")
    private String sheerness;

    @ExcelProperty("Total Count")
    private Integer totalCount;

    @ExcelProperty("Jean Wash")
    private String jeanWash;

    @ExcelProperty("Underwear Style")
    private String underwearStyle;

    @ExcelProperty("Age Group")
    private String ageGroup;

    @ExcelProperty("Age Group 1")
    private String ageGroup1;

    @ExcelProperty("Age Group 2")
    private String ageGroup2;

    @ExcelProperty("Age Group 3")
    private String ageGroup3;

    @ExcelProperty("Age Group 4")
    private String ageGroup4;

    @ExcelProperty("Age Group 5")
    private String ageGroup5;

    @ExcelProperty("Age Group 6")
    private String ageGroup6;

    @ExcelProperty("Age Group 7")
    private String ageGroup7;

    @ExcelProperty("Age Group 8")
    private String ageGroup8;

    @ExcelProperty("Manufacturer Part Number")
    private String manufacturerPartNumber;

    @ExcelProperty("Autographed by")
    private String autographedBy;

    @ExcelProperty("Country of Origin - Textiles")
    private String countryOfOriginTextiles;

    @ExcelProperty("Warranty URL")
    private String warrantyURL;

    @ExcelProperty("California Prop 65 Warning Text")
    private String californiaProp65WarningText;

    @ExcelProperty("Occasion")
    private String occasion;

    @ExcelProperty("Underpants Type")
    private String underpantsType;

    @ExcelProperty("Color")
    private String color;

    @ExcelProperty("Dress Style")
    private String dressStyle;

    @ExcelProperty("Key Features")
    private String keyFeatures;

    @ExcelProperty("Key Features 1")
    private String keyFeatures1;

    @ExcelProperty("Key Features 2")
    private String keyFeatures2;

    @ExcelProperty("Key Features 3")
    private String keyFeatures3;

    @ExcelProperty("Key Features 4")
    private String keyFeatures4;

    @ExcelProperty("Key Features 5")
    private String keyFeatures5;

    @ExcelProperty("Clothing Neck Style")
    private String clothingNeckStyle;

    @ExcelProperty("Fabric Material Name")
    private String fabricMaterialName;

    @ExcelProperty("Fabric Material Percentage")
    private String fabricMaterialPercentage;

    @ExcelProperty("Skirt Style")
    private String skirtStyle;

    @ExcelProperty("Clothing Size")
    private String clothingSize;

    @ExcelProperty("Collar Style")
    private String collarStyle;

    @ExcelProperty("Pajama Type")
    private String pajamaType;

    @ExcelProperty("Clothing Size Group")
    private String clothingSizeGroup;

    @ExcelProperty("Is Maternity")
    private String isMaternity;

    @ExcelProperty("Recycled Material")
    private Boolean recycledMaterial;

    @ExcelProperty("Percentage of Recycled Material")
    private Double percentageOfRecycledMaterial;

    @ExcelProperty("Color Category")
    private String colorCategory;

    @ExcelProperty("Pant Size")
    private String pantSize;

    @ExcelProperty("Panty Size")
    private String pantySize;

    @ExcelProperty("Belt Buckle Style")
    private String beltBuckleStyle;

    @ExcelProperty("Material")
    private String material;

    @ExcelProperty("Sleeve Length Style")
    private String sleeveLengthStyle;

    @ExcelProperty("Sports Team")
    private String sportsTeam;

    @ExcelProperty("Sport")
    private String sport;

    @ExcelProperty("Variant Group ID")
    private String variantGroupID;

    @ExcelProperty("Variant Attribute Names")
    private List<String> variantAttributeNames;

    @ExcelProperty("Variant Attribute Names 1")
    private List<String> variantAttributeNames1;

    @ExcelProperty("Swatch Variant Attribute")
    private String swatchVariantAttribute;

    @ExcelProperty("Swatch Image URL")
    private String swatchImageURL;

    @ExcelProperty("Is Primary Variant")
    private Boolean isPrimaryVariant;

    @ExcelProperty("Contained Battery Type")
    private String containedBatteryType;

    @ExcelProperty("Site End Date")
    private String siteEndDate;

    @ExcelProperty("External Product ID Type")
    private String externalProductIDType;

    @ExcelProperty("External Product ID")
    private String externalProductID;

    @ExcelProperty("Restriction Type")
    private String restrictionType;

    @ExcelProperty("States")
    private List<String> states;

    @ExcelProperty("ZIP Codes")
    private List<String> zipCodes;

    @ExcelProperty("Must ship alone?")
    private Boolean mustShipAlone;

    @ExcelProperty("SKU Update")
    private String skuUpdate;

    @ExcelProperty("PPU Quantity of Units")
    private Integer ppuQuantityOfUnits;

    @ExcelProperty("PPU Unit of Measure")
    private String ppuUnitOfMeasure;

    @ExcelProperty("Multipack Quantity")
    private Integer multipackQuantity;

    @ExcelProperty("Additional Offer Attribute Name")
    private String additionalOfferAttributeName;

    @ExcelProperty("Additional Offer Attribute Value")
    private String additionalOfferAttributeValue;

    @ExcelProperty("Contains Electronic Component?")
    private Boolean containsElectronicComponent;

    @ExcelProperty("Ships in Original Packaging")
    private Boolean shipsInOriginalPackaging;

    @ExcelProperty("Local Delivery Depth (in)")
    private Double localDeliveryDepth;

    @ExcelProperty("Local Delivery Width (in)")
    private Double localDeliveryWidth;

    @ExcelProperty("Local Delivery Height (in)")
    private Double localDeliveryHeight;

    @ExcelProperty("Local Delivery Weight (lbs)")
    private Double localDeliveryWeight;

    @ExcelProperty("Contains Chemical, Aerosol or Pesticide?")
    private Boolean containsChemicalAerosolOrPesticide;

    @ExcelProperty("Fulfillment Lag Time")
    private String fulfillmentLagTime;

    @ExcelProperty("Product Id Update")
    private String productIdUpdate;

    @ExcelProperty("Site Start Date")
    private String siteStartDate;

    @Data
    private static class AdditionalProductAttribute {
        private String name;
        private String value;
    }
}